﻿using System;
using System.Collections.Generic;
using System.Linq;


class SolDict
{

   
    public bool IsValid(string s)//这样判断太麻烦了，使用字典存一个键值对
    {
        //初始化字典
        Dictionary<char, char> kuohaos = new Dictionary<char, char>(
            ){
            { '(', ')' }
        };
        //kuohaos.Add('[', ']');//dict的key不可以重复
        kuohaos.Add('[', ']');
        kuohaos['{'] = '}';

        //根据键取值
        if (kuohaos.TryGetValue('[', out char right))
        {
            Console.WriteLine("'['的valve/"+ right);
        }
        else
        {
            Console.WriteLine("没有左括号");


        }
        //删除键值对
        Console.WriteLine("删除[");
        kuohaos.Remove('[');
        //遍历
        Console.WriteLine("遍历keys");
        foreach (char c in kuohaos.Keys)
        {
            Console.WriteLine(c);
        }
        Console.WriteLine("遍历Values");
        foreach (char c in kuohaos.Values)
        {
            Console.WriteLine(c);
        }
        //计数
        Console.WriteLine("计数");
        Console.WriteLine(kuohaos.Count);

        //检查是否含有某个键
        if (kuohaos.ContainsKey('{'))
        {
            Console.WriteLine("有{");
        }



        return false;

    }


}

class ProgramDict
{

    static void MainDict(string[] args)
    {
        string kuohao = "()[]{}";
        SolDict sol = new SolDict();
        bool isvalid = sol.IsValid(kuohao);
        Console.WriteLine(isvalid);
        Console.ReadKey();


    }
}


